/**
 * @brief 过滤器定义模块。过滤器有一下特点
 *    1 过滤器可以构成链式结构，通过头数据逐步传输到链尾
 *    2 数据是双向流动的，头到尾为编码过程；尾到头是解码过程
 *   因此串口是一个和网络都是一个空的过滤器，这个过滤器只是在中间传输数据
 * @version 1.0
 * @date 2018-2-24
 * @author 宋炜
*/

#ifndef FILTER_HPP_INCLUDED
#define FILTER_HPP_INCLUDED

#include <list>

class filterIO;
class filterList : public std::list< filterIO >
{
public:
    /**
     * @brief 构造一个过滤器对象
    */
    filterList() : std::list< filterIO >() { }
    virtual ~filterList ();
    /**
     * @brief 获取头和尾
    */
    filterIO & head();
    filterIO & tail();
private:

};

#endif // FILTER_HPP_INCLUDED
